package org.videopractice.network.handler;

import org.videopractice.network.message.BaseDto;
import org.videopractice.network.message.Message;

import io.netty.channel.Channel;

public interface IService<T extends BaseDto> {

    /**
     *
     *
     * 方法说明：业务处理
     *
     * @param response       消息体转换后的对象实体（如果不转换，则为null,
     *                       参考方法：{@link org.videopractice.network.message.MessageCode#isJsonCoverToObject()}）
     * @param message        请求报文
     *                       {@link org.videopractice.network.message.Message}
     * @param channel        当前连接通道 {@link Channel}
     * @return
     *
     * @author BL CreateDate: 2017年10月10日
     *
     */
    public Message process(T response, Message message, Channel channel);

}
